home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 April: Mac OS SDK / Dev.CD Apr 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Interfaces / PInterfaces / Controls.p < prev    next >
Encoding:
Text File  |  1996-05-05  |  21.0 KB  |  669 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        Controls.p
  3.  
  4.      Contains:    Control Manager interfaces
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Package:    Universal Interfaces 2.1.3
  8.  
  9.      Copyright:    © 1984-1995 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13.                  stack.  Include the file and version information (from above)
  14.                  in the problem description and send to:
  15.                      Internet:    apple.bugs@applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. }
  19.  
  20. {$IFC UNDEFINED UsingIncludes}
  21. {$SETC UsingIncludes := 0}
  22. {$ENDC}
  23.  
  24. {$IFC NOT UsingIncludes}
  25.  UNIT Controls;
  26.  INTERFACE
  27. {$ENDC}
  28.  
  29. {$IFC UNDEFINED __CONTROLS__}
  30. {$SETC __CONTROLS__ := 1}
  31.  
  32. {$I+}
  33. {$SETC ControlsIncludes := UsingIncludes}
  34. {$SETC UsingIncludes := 1}
  35.  
  36.  
  37. {$IFC UNDEFINED __TYPES__}
  38. {$I Types.p}
  39. {$ENDC}
  40. {    ConditionalMacros.p                                            }
  41.  
  42. {$IFC UNDEFINED __QUICKDRAW__}
  43. {$I Quickdraw.p}
  44. {$ENDC}
  45. {    MixedMode.p                                                    }
  46. {    QuickdrawText.p                                                }
  47.  
  48. {$IFC UNDEFINED __MENUS__}
  49. {$I Menus.p}
  50. {$ENDC}
  51. {    Memory.p                                                    }
  52.  
  53. {$PUSH}
  54. {$ALIGN MAC68K}
  55. {$LibExport+}
  56. {_________________________________________________________________________________________________________}
  57. {}
  58. { • CONTROL DEFINITION ID'S}
  59. {}
  60. {_________________________________________________________________________________________________________}
  61. {}
  62. { Standard System 7 procID's for use only with NewControl()}
  63. {}
  64.  
  65. CONST
  66.     pushButProc                    = 0;
  67.     checkBoxProc                = 1;
  68.     radioButProc                = 2;
  69.     scrollBarProc                = 16;
  70.     popupMenuProc                = 1008;
  71.  
  72.     kControlUsesOwningWindowsFontVariant = 1 * (2**(3));        { Control uses owning windows font to display text}
  73.  
  74. {_________________________________________________________________________________________________________}
  75. {}
  76. { • CONTROL PART CODES}
  77. {}
  78. {_________________________________________________________________________________________________________}
  79.     
  80. TYPE
  81.     ControlPartCode = SInt16;
  82.  
  83.  
  84. CONST
  85.     kControlNoPart                = 0;
  86.     kControlLabelPart            = 1;
  87.     kControlMenuPart            = 2;
  88.     kControlTrianglePart        = 4;
  89.     kControlButtonPart            = 10;
  90.     kControlCheckBoxPart        = 11;
  91.     kControlRadioButtonPart        = 11;
  92.     kControlUpButtonPart        = 20;
  93.     kControlDownButtonPart        = 21;
  94.     kControlPageUpPart            = 22;
  95.     kControlPageDownPart        = 23;
  96.     kControlIndicatorPart        = 129;
  97.     kControlDisabledPart        = 254;
  98.     kControlInactivePart        = 255;
  99.  
  100. {_________________________________________________________________________________________________________}
  101. {}
  102. { • CHECK BOX VALUES}
  103. {}
  104. {_________________________________________________________________________________________________________}
  105.     kControlCheckboxUncheckedValue = 0;
  106.     kControlCheckboxCheckedValue = 1;
  107.     kControlCheckboxMixedValue    = 2;
  108.  
  109. {_________________________________________________________________________________________________________}
  110. {}
  111. { • RADIO BUTTON VALUES}
  112. {}
  113. {_________________________________________________________________________________________________________}
  114.     kControlRadioButtonUncheckedValue = 0;
  115.     kControlRadioButtonCheckedValue = 1;
  116.     kControlRadioButtonMixedValue = 2;
  117.  
  118. {_________________________________________________________________________________________________________}
  119. { }
  120. { • CONTROL POP-UP MENU CONSTANTS}
  121. {}
  122. {_________________________________________________________________________________________________________}
  123. {}
  124. { Variant codes for the System 7 pop-up menu}
  125. {}
  126.     popupFixedWidth                = 1 * (2**(0));
  127.     popupVariableWidth            = 1 * (2**(1));
  128.     popupUseAddResMenu            = 1 * (2**(2));
  129.     popupUseWFont                = 1 * (2**(3));
  130.  
  131. {}
  132. { Menu label styles for the System 7 pop-up menu }
  133. {}
  134.     popupTitleBold                = 1 * (2**(8));
  135.     popupTitleItalic            = 1 * (2**(9));
  136.     popupTitleUnderline            = 1 * (2**(10));
  137.     popupTitleOutline            = 1 * (2**(11));
  138.     popupTitleShadow            = 1 * (2**(12));
  139.     popupTitleCondense            = 1 * (2**(13));
  140.     popupTitleExtend            = 1 * (2**(14));
  141.     popupTitleNoStyle            = 1 * (2**(15));
  142.  
  143. {}
  144. { Menu label justifications for the System 7 pop-up menu}
  145. {}
  146.     popupTitleLeftJust            = $00000000;
  147.     popupTitleCenterJust        = $00000001;
  148.     popupTitleRightJust            = $000000FF;
  149.  
  150. {_________________________________________________________________________________________________________}
  151. {}
  152. { • CONTROL DRAGGRAYRGN CONSTANTS}
  153. {}
  154. {   For DragGrayRgnUPP used in TrackControl() }
  155. {}
  156. {_________________________________________________________________________________________________________}
  157.     noConstraint                = kNoConstraint;
  158.     hAxisOnly                    = 1;
  159.     vAxisOnly                    = 2;
  160.  
  161. {_________________________________________________________________________________________________________}
  162. {}
  163. { • CONTROL COLOR TABLE PART CODES}
  164. {}
  165. {_________________________________________________________________________________________________________}
  166.     cFrameColor                    = 0;
  167.     cBodyColor                    = 1;
  168.     cTextColor                    = 2;
  169.     cThumbColor                    = 3;
  170.  
  171. {_________________________________________________________________________________________________________}
  172. {}
  173. { • CONTROL TYPE DECLARATIONS}
  174. {}
  175. {_________________________________________________________________________________________________________}
  176. {}
  177. { Define ControlRef and ControlHandle}
  178. {}    
  179. TYPE
  180.     ControlPtr = ^ControlRecord;
  181.     ControlHandle = ^ControlPtr;
  182.  
  183.     ControlRef = ControlHandle;
  184.  
  185. {_________________________________________________________________________________________________________}
  186. {}
  187. { • CONTROL ACTIONPROC POINTER}
  188. {}
  189. {_________________________________________________________________________________________________________}
  190.     ControlActionProcPtr = ProcPtr;  { PROCEDURE ControlAction(theControl: ControlRef; partCode: ControlPartCode); }
  191.     ControlActionUPP = UniversalProcPtr;
  192.  
  193. {_________________________________________________________________________________________________________}
  194. {}
  195. { • CONTROL COLOR TABLE STRUCTURE}
  196. {}
  197. {_________________________________________________________________________________________________________}
  198.     CtlCTab = RECORD
  199.         ccSeed:                    SInt32;
  200.         ccRider:                SInt16;
  201.         ctSize:                    SInt16;
  202.         ctTable:                ARRAY [0..3] OF ColorSpec;
  203.     END;
  204.  
  205.     CCTabPtr = ^CtlCTab;
  206.     CCTabHandle = ^CCTabPtr;
  207.  
  208.  
  209. {_________________________________________________________________________________________________________}
  210. {}
  211. { • CONTROL RECORD STRUCTURE}
  212. {}
  213. {_________________________________________________________________________________________________________}
  214.     ControlRecord = PACKED RECORD
  215.         nextControl:            ControlRef;
  216.         contrlOwner:            WindowRef;
  217.         contrlRect:                Rect;
  218.         contrlVis:                UInt8;
  219.         contrlHilite:            UInt8;
  220.         contrlValue:            SInt16;
  221.         contrlMin:                SInt16;
  222.         contrlMax:                SInt16;
  223.         contrlDefProc:            Handle;
  224.         contrlData:                Handle;
  225.         contrlAction:            ControlActionUPP;
  226.         contrlRfCon:            SInt32;
  227.         contrlTitle:            Str255;
  228.     END;
  229.  
  230. {_________________________________________________________________________________________________________}
  231. {}
  232. { • AUXILLARY CONTROL RECORD STRUCTURE}
  233. {}
  234. {_________________________________________________________________________________________________________}
  235.     AuxCtlRec = RECORD
  236.         acNext:                    Handle;
  237.         acOwner:                ControlRef;
  238.         acCTable:                CCTabHandle;
  239.         acFlags:                SInt16;
  240.         acReserved:                SInt32;
  241.         acRefCon:                SInt32;
  242.     END;
  243.  
  244.     AuxCtlPtr = ^AuxCtlRec;
  245.     AuxCtlHandle = ^AuxCtlPtr;
  246.  
  247. {_________________________________________________________________________________________________________}
  248. {}
  249. { • POP-UP MENU PRIVATE DATA STRUCTURE}
  250. {}
  251. {_________________________________________________________________________________________________________}
  252.     PopupPrivateData = RECORD
  253.         mHandle:                MenuHandle;
  254.         mID:                    SInt16;
  255.     END;
  256.  
  257.     PopupPrivateDataPtr = ^PopupPrivateData;
  258.     PopupPrivateDataHandle = ^PopupPrivateDataPtr;
  259.  
  260.  
  261.  
  262. CONST
  263.     uppControlActionProcInfo = $000002C0; { PROCEDURE (4 byte param, 2 byte param); }
  264.  
  265. FUNCTION NewControlActionProc(userRoutine: ControlActionProcPtr): ControlActionUPP;
  266.     {$IFC NOT GENERATINGCFM }
  267.     INLINE $2E9F;
  268.     {$ENDC}
  269.  
  270. PROCEDURE CallControlActionProc(theControl: ControlRef; partCode: ControlPartCode; userRoutine: ControlActionUPP);
  271.     {$IFC NOT GENERATINGCFM}
  272.     INLINE $205F, $4E90;
  273.     {$ENDC}
  274. {_________________________________________________________________________________________________________}
  275. {    }
  276. { • CONTROL CREATION / DELETION API'S}
  277. {}
  278. {_________________________________________________________________________________________________________}
  279.  
  280. FUNCTION NewControl(theWindow: WindowRef; {CONST}VAR boundsRect: Rect; title: ConstStr255Param; visible: BOOLEAN; value: SInt16; min: SInt16; max: SInt16; procID: SInt16; refCon: SInt32): ControlRef;
  281.     {$IFC NOT GENERATINGCFM}
  282.     INLINE $A954;
  283.     {$ENDC}
  284. FUNCTION GetNewControl(controlID: SInt16; owner: WindowRef): ControlRef;
  285.     {$IFC NOT GENERATINGCFM}
  286.     INLINE $A9BE;
  287.     {$ENDC}
  288. PROCEDURE DisposeControl(theControl: ControlRef);
  289.     {$IFC NOT GENERATINGCFM}
  290.     INLINE $A955;
  291.     {$ENDC}
  292. PROCEDURE KillControls(theWindow: WindowRef);
  293.     {$IFC NOT GENERATINGCFM}
  294.     INLINE $A956;
  295.     {$ENDC}
  296. {_________________________________________________________________________________________________________}
  297. {    }
  298. { • CONTROL SHOWING/HIDING API'S}
  299. {}
  300. {_________________________________________________________________________________________________________}
  301. PROCEDURE ShowControl(theControl: ControlRef);
  302.     {$IFC NOT GENERATINGCFM}
  303.     INLINE $A957;
  304.     {$ENDC}
  305. PROCEDURE HideControl(theControl: ControlRef);
  306.     {$IFC NOT GENERATINGCFM}
  307.     INLINE $A958;
  308.     {$ENDC}
  309. {_________________________________________________________________________________________________________}
  310. {    }
  311. { • CONTROL DRAWING API'S}
  312. {}
  313. {_________________________________________________________________________________________________________}
  314. PROCEDURE DrawControls(theWindow: WindowRef);
  315.     {$IFC NOT GENERATINGCFM}
  316.     INLINE $A969;
  317.     {$ENDC}
  318. PROCEDURE Draw1Control(theControl: ControlRef);
  319.     {$IFC NOT GENERATINGCFM}
  320.     INLINE $A96D;
  321.     {$ENDC}
  322. PROCEDURE UpdateControls(theWindow: WindowRef; updateRegion: RgnHandle);
  323.     {$IFC NOT GENERATINGCFM}
  324.     INLINE $A953;
  325.     {$ENDC}
  326. {_________________________________________________________________________________________________________}
  327. {    }
  328. { • CONTROL HIGHLIGHT API'S}
  329. {}
  330. {_________________________________________________________________________________________________________}
  331. PROCEDURE HiliteControl(theControl: ControlRef; hiliteState: ControlPartCode);
  332.     {$IFC NOT GENERATINGCFM}
  333.     INLINE $A95D;
  334.     {$ENDC}
  335. FUNCTION TrackControl(theControl: ControlRef; thePoint: Point; actionProc: ControlActionUPP): ControlPartCode;
  336.     {$IFC NOT GENERATINGCFM}
  337.     INLINE $A968;
  338.     {$ENDC}
  339. PROCEDURE DragControl(theControl: ControlRef; startPoint: Point; {CONST}VAR limitRect: Rect; {CONST}VAR slopRect: Rect; axis: DragConstraint);
  340.     {$IFC NOT GENERATINGCFM}
  341.     INLINE $A967;
  342.     {$ENDC}
  343. FUNCTION TestControl(theControl: ControlRef; thePoint: Point): ControlPartCode;
  344.     {$IFC NOT GENERATINGCFM}
  345.     INLINE $A966;
  346.     {$ENDC}
  347. FUNCTION FindControl(thePoint: Point; theWindow: WindowRef; VAR theControl: ControlRef): ControlPartCode;
  348.     {$IFC NOT GENERATINGCFM}
  349.     INLINE $A96C;
  350.     {$ENDC}
  351. {_________________________________________________________________________________________________________}
  352. {    }
  353. { • CONTROL MOVING/SIZING API'S}
  354. {}
  355. {_________________________________________________________________________________________________________}
  356. PROCEDURE MoveControl(theControl: ControlRef; h: SInt16; v: SInt16);
  357.     {$IFC NOT GENERATINGCFM}
  358.     INLINE $A959;
  359.     {$ENDC}
  360. PROCEDURE SizeControl(theControl: ControlRef; w: SInt16; h: SInt16);
  361.     {$IFC NOT GENERATINGCFM}
  362.     INLINE $A95C;
  363.     {$ENDC}
  364. {_________________________________________________________________________________________________________}
  365. {    }
  366. { • CONTROL TITLE API'S}
  367. {}
  368. {_________________________________________________________________________________________________________}
  369. PROCEDURE SetControlTitle(theControl: ControlRef; title: ConstStr255Param);
  370.     {$IFC NOT GENERATINGCFM}
  371.     INLINE $A95F;
  372.     {$ENDC}
  373. PROCEDURE GetControlTitle(theControl: ControlRef; VAR title: Str255);
  374.     {$IFC NOT GENERATINGCFM}
  375.     INLINE $A95E;
  376.     {$ENDC}
  377. {_________________________________________________________________________________________________________}
  378. {    }
  379. { • CONTROL VALUE, MIMIMUM, AND MAXIMUM API'S}
  380. {}
  381. {_________________________________________________________________________________________________________}
  382. FUNCTION GetControlValue(theControl: ControlRef): SInt16;
  383.     {$IFC NOT GENERATINGCFM}
  384.     INLINE $A960;
  385.     {$ENDC}
  386. PROCEDURE SetControlValue(theControl: ControlRef; newValue: SInt16);
  387.     {$IFC NOT GENERATINGCFM}
  388.     INLINE $A963;
  389.     {$ENDC}
  390. FUNCTION GetControlMinimum(theControl: ControlRef): SInt16;
  391.     {$IFC NOT GENERATINGCFM}
  392.     INLINE $A961;
  393.     {$ENDC}
  394. PROCEDURE SetControlMinimum(theControl: ControlRef; newMinimum: SInt16);
  395.     {$IFC NOT GENERATINGCFM}
  396.     INLINE $A964;
  397.     {$ENDC}
  398. FUNCTION GetControlMaximum(theControl: ControlRef): SInt16;
  399.     {$IFC NOT GENERATINGCFM}
  400.     INLINE $A962;
  401.     {$ENDC}
  402. PROCEDURE SetControlMaximum(theControl: ControlRef; newMaximum: SInt16);
  403.     {$IFC NOT GENERATINGCFM}
  404.     INLINE $A965;
  405.     {$ENDC}
  406. {_________________________________________________________________________________________________________}
  407. {    }
  408. { • CONTROL VARIANT AND WINDOW INFORMATION API'S}
  409. {}
  410. {_________________________________________________________________________________________________________}
  411. FUNCTION GetControlVariant(theControl: ControlRef): SInt16;
  412.     {$IFC NOT GENERATINGCFM}
  413.     INLINE $A809;
  414.     {$ENDC}
  415. {_________________________________________________________________________________________________________}
  416. {    }
  417. { • CONTROL ACTION PROC API'S}
  418. {}
  419. {_________________________________________________________________________________________________________}
  420. PROCEDURE SetControlAction(theControl: ControlRef; actionProc: ControlActionUPP);
  421.     {$IFC NOT GENERATINGCFM}
  422.     INLINE $A96B;
  423.     {$ENDC}
  424. FUNCTION GetControlAction(theControl: ControlRef): ControlActionUPP;
  425.     {$IFC NOT GENERATINGCFM}
  426.     INLINE $A96A;
  427.     {$ENDC}
  428. {_________________________________________________________________________________________________________}
  429. {    }
  430. { • CONTROL ACCESSOR API'S}
  431. {}
  432. {_________________________________________________________________________________________________________}
  433. PROCEDURE SetControlReference(theControl: ControlRef; data: SInt32);
  434.     {$IFC NOT GENERATINGCFM}
  435.     INLINE $A95B;
  436.     {$ENDC}
  437. FUNCTION GetControlReference(theControl: ControlRef): SInt32;
  438.     {$IFC NOT GENERATINGCFM}
  439.     INLINE $A95A;
  440.     {$ENDC}
  441. {
  442. *****************************************************************************
  443. *                                                                           *
  444. * The conditional STRICT_CONTROLS has been removed from this interface file.*
  445. * The accessor macros to a ControlRecord are no longer necessary.           *
  446. *                                                                           *
  447. *****************************************************************************
  448.  
  449. Details:
  450. The original purpose of the STRICT_ conditionals and accessor macros was to
  451. help ease the transition to Copland.   Shared data structures are difficult
  452. to coordinate in a preemptive multitasking OS.  By hiding the fields in a
  453. WindowRecord and other data structures, we would begin the migration to 
  454. system data structures being completely hidden from applications. 
  455.  
  456. After many design reviews, it was finally concluded that with this sort of
  457. migration, the system could never tell when an application was no longer 
  458. peeking at a WindowRecord, and thus the data structure might never become 
  459. system owned.  Additionally, there were many other limitations in the classic
  460. toolbox that were begging to be addressed.
  461.  
  462. The final decision was to leave the traditional toolbox as a compatibility mode.
  463. The preferred toolbox API for Copland is a new SOM(tm) based architecture 
  464. (e.g. HIWindows.idl).  Windows, menu, controls, etc are each a SOM object 
  465. with methods for drawing, event handling, and customization.
  466.  
  467.  
  468. }
  469. FUNCTION GetAuxiliaryControlRecord(theControl: ControlRef; VAR acHndl: AuxCtlHandle): BOOLEAN;
  470.     {$IFC NOT GENERATINGCFM}
  471.     INLINE $AA44;
  472.     {$ENDC}
  473. PROCEDURE SetControlColor(theControl: ControlRef; newColorTable: CCTabHandle);
  474.     {$IFC NOT GENERATINGCFM}
  475.     INLINE $AA43;
  476.     {$ENDC}
  477. {_________________________________________________________________________________________________________}
  478. {    }
  479. { • VALID 'CDEF' MESSAGES}
  480. {}
  481. {_________________________________________________________________________________________________________}
  482.     
  483. TYPE
  484.     ControlDefProcMessage = SInt16;
  485.  
  486.  
  487. CONST
  488.     drawCntl                    = 0;
  489.     testCntl                    = 1;
  490.     calcCRgns                    = 2;
  491.     initCntl                    = 3;
  492.     dispCntl                    = 4;
  493.     posCntl                        = 5;
  494.     thumbCntl                    = 6;
  495.     dragCntl                    = 7;
  496.     autoTrack                    = 8;
  497.     calcCntlRgn                    = 10;
  498.     calcThumbRgn                = 11;
  499.     drawThumbOutline            = 12;
  500.  
  501. {_________________________________________________________________________________________________________}
  502. {    }
  503. { • MAIN ENTRY POINT FOR 'CDEF'}
  504. {}
  505. {_________________________________________________________________________________________________________}
  506. TYPE
  507.     ControlDefProcPtr = ProcPtr;  { FUNCTION ControlDef(varCode: SInt16; theControl: ControlRef; message: ControlDefProcMessage; param: SInt32): SInt32; }
  508.     ControlDefUPP = UniversalProcPtr;
  509.  
  510. CONST
  511.     uppControlDefProcInfo = $00003BB0; { FUNCTION (2 byte param, 4 byte param, 2 byte param, 4 byte param): 4 byte result; }
  512.  
  513. FUNCTION NewControlDefProc(userRoutine: ControlDefProcPtr): ControlDefUPP;
  514.     {$IFC NOT GENERATINGCFM }
  515.     INLINE $2E9F;
  516.     {$ENDC}
  517.  
  518. FUNCTION CallControlDefProc(varCode: SInt16; theControl: ControlRef; message: ControlDefProcMessage; param: SInt32; userRoutine: ControlDefUPP): SInt32;
  519.     {$IFC NOT GENERATINGCFM}
  520.     INLINE $205F, $4E90;
  521.     {$ENDC}
  522. {_________________________________________________________________________________________________________}
  523. {    }
  524. { • CONSTANTS FOR DRAWCNTL MESSAGE PASSED IN PARAM}
  525. {}
  526. {_________________________________________________________________________________________________________}
  527.  
  528. CONST
  529.     kDrawControlEntireControl    = 0;
  530.     kDrawControlIndicatorOnly    = 129;
  531.  
  532. {_________________________________________________________________________________________________________}
  533. {    }
  534. { • CONSTANTS FOR DRAGCNTL MESSAGE PASSED IN PARAM}
  535. {}
  536. {_________________________________________________________________________________________________________}
  537.     kDragControlEntireControl    = 0;
  538.     kDragControlIndicator        = 1;
  539.  
  540. {_________________________________________________________________________________________________________}
  541. {    }
  542. { • DRAG CONSTRAINT STRUCTURE PASSED IN PARAM FOR THUMBCNTL MESSAGE (IM I-332)}
  543. {}
  544. {_________________________________________________________________________________________________________}
  545.  
  546. TYPE
  547.     IndicatorDragConstraint = RECORD
  548.         limitRect:                Rect;
  549.         slopRect:                Rect;
  550.         axis:                    DragConstraint;
  551.     END;
  552.  
  553.     IndicatorDragConstraintPtr = ^IndicatorDragConstraint;
  554.     IndicatorDragConstraintHandle = ^IndicatorDragConstraintPtr;
  555.  
  556. {_________________________________________________________________________________________________________}
  557. {}
  558. { • OLD ROUTINE NAMES}
  559. {}
  560. {   These are provided for compatiblity with older source bases.  It is recommended to not use them since}
  561. {     they may removed from this interface file at any time.}
  562. {}
  563. {_________________________________________________________________________________________________________}
  564. {$IFC OLDROUTINENAMES }
  565.  
  566. CONST
  567.     useWFont                    = 8;
  568.  
  569.     inLabel                        = 1;
  570.     inMenu                        = 2;
  571.     inTriangle                    = 4;
  572.     inButton                    = 10;
  573.     inCheckBox                    = 11;
  574.     inUpButton                    = 20;
  575.     inDownButton                = 21;
  576.     inPageUp                    = 22;
  577.     inPageDown                    = 23;
  578.     inThumb                        = 129;
  579.  
  580.     kNoHiliteControlPart        = 0;
  581.     kInLabelControlPart            = 1;
  582.     kInMenuControlPart            = 2;
  583.     kInTriangleControlPart        = 4;
  584.     kInButtonControlPart        = 10;
  585.     kInCheckBoxControlPart        = 11;
  586.     kInUpButtonControlPart        = 20;
  587.     kInDownButtonControlPart    = 21;
  588.     kInPageUpControlPart        = 22;
  589.     kInPageDownControlPart        = 23;
  590.     kInIndicatorControlPart        = 129;
  591.     kReservedControlPart        = 254;
  592.     kControlInactiveControlPart    = 255;
  593.  
  594. {$ENDC}
  595. {$IFC OLDROUTINENAMES }
  596.  
  597. PROCEDURE SetCTitle(theControl: ControlRef; title: ConstStr255Param);
  598.     {$IFC NOT GENERATINGCFM}
  599.     INLINE $A95F;
  600.     {$ENDC}
  601. PROCEDURE GetCTitle(theControl: ControlRef; VAR title: Str255);
  602.     {$IFC NOT GENERATINGCFM}
  603.     INLINE $A95E;
  604.     {$ENDC}
  605. PROCEDURE UpdtControl(theWindow: WindowRef; updateRgn: RgnHandle);
  606.     {$IFC NOT GENERATINGCFM}
  607.     INLINE $A953;
  608.     {$ENDC}
  609. PROCEDURE SetCtlValue(theControl: ControlRef; theValue: INTEGER);
  610.     {$IFC NOT GENERATINGCFM}
  611.     INLINE $A963;
  612.     {$ENDC}
  613. FUNCTION GetCtlValue(theControl: ControlRef): INTEGER;
  614.     {$IFC NOT GENERATINGCFM}
  615.     INLINE $A960;
  616.     {$ENDC}
  617. PROCEDURE SetCtlMin(theControl: ControlRef; minValue: INTEGER);
  618.     {$IFC NOT GENERATINGCFM}
  619.     INLINE $A964;
  620.     {$ENDC}
  621. FUNCTION GetCtlMin(theControl: ControlRef): INTEGER;
  622.     {$IFC NOT GENERATINGCFM}
  623.     INLINE $A961;
  624.     {$ENDC}
  625. PROCEDURE SetCtlMax(theControl: ControlRef; maxValue: INTEGER);
  626.     {$IFC NOT GENERATINGCFM}
  627.     INLINE $A965;
  628.     {$ENDC}
  629. FUNCTION GetCtlMax(theControl: ControlRef): INTEGER;
  630.     {$IFC NOT GENERATINGCFM}
  631.     INLINE $A962;
  632.     {$ENDC}
  633. PROCEDURE SetCRefCon(theControl: ControlRef; data: LONGINT);
  634.     {$IFC NOT GENERATINGCFM}
  635.     INLINE $A95B;
  636.     {$ENDC}
  637. FUNCTION GetCRefCon(theControl: ControlRef): LONGINT;
  638.     {$IFC NOT GENERATINGCFM}
  639.     INLINE $A95A;
  640.     {$ENDC}
  641. PROCEDURE SetCtlAction(theControl: ControlRef; actionProc: ControlActionUPP);
  642.     {$IFC NOT GENERATINGCFM}
  643.     INLINE $A96B;
  644.     {$ENDC}
  645. FUNCTION GetCtlAction(theControl: ControlRef): ControlActionUPP;
  646.     {$IFC NOT GENERATINGCFM}
  647.     INLINE $A96A;
  648.     {$ENDC}
  649. PROCEDURE SetCtlColor(theControl: ControlRef; newColorTable: CCTabHandle);
  650.     {$IFC NOT GENERATINGCFM}
  651.     INLINE $AA43;
  652.     {$ENDC}
  653. FUNCTION GetCVariant(theControl: ControlRef): INTEGER;
  654.     {$IFC NOT GENERATINGCFM}
  655.     INLINE $A809;
  656.     {$ENDC}
  657. {$ENDC}
  658.  
  659. {$ALIGN RESET}
  660. {$POP}
  661.  
  662. {$SETC UsingIncludes := ControlsIncludes}
  663.  
  664. {$ENDC} {__CONTROLS__}
  665.  
  666. {$IFC NOT UsingIncludes}
  667.  END.
  668. {$ENDC}
  669.